#include <iostream>
#include <queue>
#include <vector>
using namespace std;

int main() {
	vector<string> board(8);
	pair<int, int> start;
	
	// 读取棋盘布局并找到Maria的起始位置
	for (int i = 0; i < 8; ++i) {
		cin >> board[i];
		for (int j = 0; j < 8; ++j) {
			if (board[i][j] == 'M') {
				start = {i, j};
			}
		}
	}
	
	vector<vector<bool>> visited(8, vector<bool>(8, false));
	queue<pair<int, int>> q;
	q.push(start);
	visited[start.first][start.second] = true;
	
	// 定义8个移动方向（包括对角线）
	int dirs[8][2] = {{-1, -1}, {-1, 0}, {-1, 1}, 
		{0, -1},          {0, 1}, 
		{1, -1},  {1, 0}, {1, 1}};
	
	while (!q.empty()) {
		auto [x, y] = q.front();
		q.pop();
		
		// 检查是否到达Anna的位置
		if (board[x][y] == 'A') {
			cout << "WIN" << endl;
			return 0;
		}
		
		// 遍历所有移动方向
		for (auto& d : dirs) {
			int nx = x + d[0];
			int ny = y + d[1];
			// 检查边界、访问状态和是否有雕像
			if (nx >= 0 && nx < 8 && ny >= 0 && ny < 8 && 
				!visited[nx][ny] && board[nx][ny] != 's') {
				visited[nx][ny] = true;
				q.push({nx, ny});
			}
		}
	}
	
	// 搜索结束未找到路径
	cout << "LOSE" << endl;
	return 0;
}
